Cropping
an Image
The following
example creates an MCIWnd window and loads an AVI file. The window includes a
crop command in the menu, which crops one-quarter of the height or width from
each of the four sides of the frame. The example retrieves the current
(initial) dimensions of the source rectangle by using the MCIWndGetSource
// extern RECT rSource, rDest;
case WM_COMMAND:
switch
(wParam)
{
case
IDM_CREATEMCIWND:
g_hwndMCIWnd = MCIWndCreate( hwnd,
g_hinst,
WS_CHILD | WS_VISIBLE,
"sample.avi" );
break;
case
IDM_CROPIMAGE:
// crops image
MCIWndGetSource(g_hwndMCIWnd, &rSource); // source rectangle
rDest.left = rSource.left +
// new boundaries
((rSource.right - rSource.left) / 4);
rDest.right = rSource.right -
((rSource.right - rSource.left) / 4);
rDest.top = rSource.top +
((rSource.bottom - rSource.top) / 4);
rDest.bottom = rSource.bottom -
((rSource.bottom - rSource.top) / 4);
MCIWndPutSource(g_hwndMCIWnd, &rDest); // new source rectangle
}
break;
// Handle
other messages here.